package com.itheima.health.utils;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;

/**
 * @author ：乔博宇
 * @date ：Created in 2019/7/30 11:54
 * @description ：
 * @version: 1.0
 */
public class DateUtils {

 public static void main(String[] args) {
  try {
   List<String> monthBetween = getMonthBetween("2019-7", "2019-11");
   System.out.println(monthBetween);
  } catch (ParseException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
 }
 // TODO Auto-generated method stub
 public  static List<String> getMonthBetween(String minDate, String maxDate) throws ParseException {
  ArrayList<String> result = new ArrayList<String>();
  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM");//格式化为年月

  Calendar min = Calendar.getInstance();
  Calendar max = Calendar.getInstance();

  min.setTime(sdf.parse(minDate));
  min.set(min.get(Calendar.YEAR), min.get(Calendar.MONTH), 1);

  max.setTime(sdf.parse(maxDate));
  max.set(max.get(Calendar.YEAR), max.get(Calendar.MONTH), 2);

  Calendar curr = min;
  while (curr.before(max)) {
   result.add(sdf.format(curr.getTime()));
   curr.add(Calendar.MONTH, 1);
  }
  return result;
 }

}
